﻿using System;
using System.Collections.Generic;
using Cesave.Domain.PermisosModule.Entities;

namespace Cesave.Domain.PermisosModule.Contracts.Distritos
{
	/// <summary>
	/// 
	/// </summary>
	public interface IDistritoService
		: IDisposable
	{
		/// <summary>
		/// 
		/// </summary>
		/// <param name="estadoGuid"></param>
		/// <returns></returns>
		List<Distrito> FindDistritosByEstado(Guid estadoGuid);

		/// <summary>
		/// 
		/// </summary>
		/// <param name="estadoGuid"></param>
		/// <param name="status"></param>
		/// <returns></returns>
		List<Distrito> FindDistritosByEstadoAndStatus(Guid estadoGuid, bool status = true);

		/// <summary>
		/// 
		/// </summary>
		/// <param name="distritoGuid"></param>
		/// <returns></returns>
		Distrito FindDistritoByGuid(Guid distritoGuid);

		/// <summary>
		/// 
		/// </summary>
		/// <param name="distrito"></param>
		void AddDistrito(Distrito distrito);

		/// <summary>
		/// 
		/// </summary>
		/// <param name="distrito"></param>
		void ChangeDistrito(Distrito distrito);

		/// <summary>
		/// 
		/// </summary>
		/// <param name="distrito"></param>
		void DeleteDistrito(Distrito distrito);
	}
}

